package com.itheima.service;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.itheima.bean.AddressBook;

import java.util.List;

/**
 * @author hebing
 * @version 1.0
 */
public interface AddressBookService {
    /**
     * 添加
     * @param addressBook
     */
    void save(AddressBook addressBook);

    /**
     * 根据条件修改默认地址
     * @param wrapper
     */
    void update(LambdaUpdateWrapper<AddressBook> wrapper);

    /**
     * 根据id修改默认地址
     * @param addressBook
     */
    void updateById(AddressBook addressBook);

    /**
     * 根据id查询记录
     * @param id
     * @return
     */
    AddressBook getById(Long id);

    /**
     * 根据用户id和默认地址进行查询
     * @param queryWrapper
     * @return
     */
    AddressBook getOne(LambdaQueryWrapper<AddressBook> queryWrapper);

    /**
     * 根据用户id查询地址簿
     * @param queryWrapper
     * @return
     */
    List<AddressBook> list(LambdaQueryWrapper<AddressBook> queryWrapper);
}
